#ifndef _UI_H_
#define _UI_H_

#include <GL/glui.h>
#include "selected_state.h"
GLUI* createEditWindow(SelectedState *ss) {
	GLUI* glui_window = GLUI_Master.create_glui("glui");
	
	
	(new GLUI_Spinner(glui_window, "translate_x:", &ss->translate[0]))
		->set_int_limits(-50, 50);
	(new GLUI_Spinner(glui_window, "translate_y:", &ss->translate[1]))
		->set_int_limits(-50, 50);
	(new GLUI_Spinner(glui_window, "translate_z:", &ss->translate[2]))
		->set_int_limits(-50, 50);

	(new GLUI_Spinner(glui_window, "scale_x:", &ss->scale[0]))
		->set_int_limits(1, 5);
	(new GLUI_Spinner(glui_window, "scale_y:", &ss->scale[1]))
		->set_int_limits(1, 5);
	(new GLUI_Spinner(glui_window, "scale_z:", &ss->scale[2]))
		->set_int_limits(1, 5);

	(new GLUI_Spinner(glui_window, "angle:", &ss->angle))
		->set_int_limits(0, 360);
	(new GLUI_Spinner(glui_window, "rotate_x:", &ss->rotate[0]))
		->set_int_limits(-1, 1);
	(new GLUI_Spinner(glui_window, "rotate_y:", &ss->rotate[1]))
		->set_int_limits(-1, 1);
	(new GLUI_Spinner(glui_window, "rotate_z:", &ss->rotate[2]))
		->set_int_limits(-1, 1);

	(new GLUI_Spinner(glui_window, "ambient_r:", &ss->ambient[0]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "ambient_g:", &ss->ambient[1]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "ambient_b:", &ss->ambient[2]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "ambient_a:", &ss->ambient[3]))
		->set_int_limits(0, 1);

	(new GLUI_Spinner(glui_window, "diffuse_r:", &ss->diffuse[0]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "diffuse_g:", &ss->diffuse[1]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "diffuse_b:", &ss->diffuse[2]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "diffuse_a:", &ss->diffuse[3]))
		->set_int_limits(0, 1);

	(new GLUI_Spinner(glui_window, "specular_r:", &ss->specular[0]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "specular_g:", &ss->specular[1]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "specular_b:", &ss->specular[2]))
		->set_int_limits(0, 1);
	(new GLUI_Spinner(glui_window, "specular_a:", &ss->specular[3]))
		->set_int_limits(0, 1);

	(new GLUI_Spinner(glui_window, "shininess:", &ss->shininess[0]))
		->set_int_limits(0, 128);
	return glui_window;
}

#endif